using UFrame;

public class AgentContext<Context, IAgent, Agent> : UFrame.AgentContext<Context, IAgent, Agent>
    where Context : UFrame.AgentContext<Context, IAgent, Agent>, new()
    where Agent : IAgent, new()
{
    protected override IGameManage Manage => GameManager.Instance;
}

public class AgentContext<Context, Manager> : UFrame.AgentContext<Context, Manager> 
    where Context : UFrame.AgentContext<Context, Manager>, new()
{
    protected override IGameManage Manage => GameManager.Instance;
}

public class AgentContext<Context> : UFrame.AgentContext<Context>
    where Context : UFrame.AgentContext<Context>, new()
{
    protected override IGameManage Manage => GameManager.Instance;
}